package com.se2.antiqueexhibition.Service;

import com.se2.antiqueexhibition.pojo.Comment;

import java.util.List;

public interface CommentService {
    /**
     * 添加评论
     */
    boolean addComment(Comment comment);

    /**
     * 根据ID获取评论
     */
    Comment getCommentById(Integer id);

    /**
     * 根据用户ID获取评论列表
     */
    List<Comment> getCommentsByUserId(Integer userId);

    /**
     * 根据目标获取评论列表（已审核通过）
     */
    List<Comment> getCommentsByTarget(String targetType, Integer targetId);

    /**
     * 根据状态获取评论列表
     */
    List<Comment> getCommentsByStatus(Integer status);

    /**
     * 获取所有评论
     */
    List<Comment> getAllComments();

    /**
     * 更新评论内容
     */
    boolean updateComment(Comment comment);

    /**
     * 审核评论（更新状态）
     */
    boolean approveComment(Integer id);

    /**
     * 拒绝评论
     */
    boolean rejectComment(Integer id);

    /**
     * 删除评论
     */
    boolean deleteComment(Integer id);

    /**
     * 删除用户的所有评论
     */
    boolean deleteCommentsByUserId(Integer userId);
}
